/*
 * Powered By xTOOLs
 * Dev by tao.li8@pactera.com
 * Copyright ©2009-2018 pactera.com All rights reserved.
 * Generated at 2020-7-20 13:58:33
 */

package com.pactera.jep.service.yapin.eval.sample.model;

import com.pactera.jep.web.entity.Result;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Digits;

import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.*;
import java.math.BigDecimal;

import com.pactera.jep.commons.DateUtils;
import com.pactera.jep.entity.PO;

/**
 * 房地产样本基本信息表实体类
 * @Author YourName
 * @Date 2020-7-20 13:58:33
 */
@ApiModel(value = "ValSampleImpRealeStateInf" , description = "房地产样本基本信息表")
@Entity
@Table(name = "ap_val_sample_realestate_inf")
public class ValSampleImpRealeStateInf implements PO {

    @ApiModelProperty("主键id")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Length(max = 32, message = "主键id长度最多32位")
    @Column(name = "SAMPLE_ID")
    private String sampleId;

    @ApiModelProperty("样本编号")
    @Length(max = 40, message = "样本编号长度最多40位")
    @Column(name = "RLEST_SAMPLE_NO")
    private String rlestSampleNo;

    @ApiModelProperty("房屋种类（押品种类）")
    @Length(max = 20, message = "房屋种类（押品种类）长度最多20位")
    @Column(name = "CLT_TP_CD")
    private String cltTpCd;

    @ApiModelProperty("样本类型")
    @Length(max = 20, message = "样本类型长度最多20位")
    @Column(name = "RLEST_SAMP_TP_CD")
    private String rlestSampTpCd;

    @ApiModelProperty("样本来源")
    @Length(max = 20, message = "样本来源长度最多20位")
    @Column(name = "SAMPLE_SRC_CD")
    private String sampleSrcCd;

    @ApiModelProperty("小区/商铺编号")
    @Length(max = 40, message = "小区/商铺编号长度最多40位")
    @Column(name = "HOUSING_EST_NO")
    private String housingEstNo;

    @ApiModelProperty("最终确定评估价值")
    @Digits(integer = 18, fraction = 2, message = "最终确定评估价值不能超过20位")
    @Column(name = "ASSESS_AMT")
    private BigDecimal assessAmt;

    @ApiModelProperty("成本成交价")
    @Digits(integer = 18, fraction = 2, message = "成本成交价不能超过20位")
    @Column(name = "UNIT_PRICE")
    private BigDecimal unitPrice;

    @ApiModelProperty("评估日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Column(name = "ASSESS_DT")
    private Date assessDt;

    @ApiModelProperty("住宅小区/商场名称")
    @Length(max = 100, message = "住宅小区/商场名称长度最多100位")
    @Column(name = "HOUSING_EST_NM")
    private String housingEstNm;

    @ApiModelProperty("地址")
    @Length(max = 256, message = "地址长度最多256位")
    @Column(name = "DETAIL_ADS")
    private String detailAds;

    @ApiModelProperty("楼号")
    @Length(max = 40, message = "楼号长度最多40位")
    @Column(name = "BUILDING_NO")
    private String buildingNo;

    @ApiModelProperty("房号")
    @Length(max = 40, message = "房号长度最多40位")
    @Column(name = "DOOR_NO")
    private String doorNo;

    @ApiModelProperty("交易面积")
    @Length(max = 16, message = "交易面积长度最多16位")
    @Column(name = "TRADE_STRCTURE_SQU")
    private String tradeStrctureSqu;

    @ApiModelProperty("是否经济适用房（产别）")
    @Length(max = 20, message = "是否经济适用房（产别）长度最多20位")
    @Column(name = "ECONOMICAL_FLG")
    private String economicalFlg;

    @ApiModelProperty("建筑物总层数")
    @Digits(integer = 10, fraction = 0, message = "建筑物总层数不能超过10位")
    @Column(name = "ABOVE_FLOOR_AMOUNT")
    private Integer aboveFloorAmount;

    @ApiModelProperty("样本所在层数")
    @Digits(integer = 10, fraction = 0, message = "样本所在层数不能超过10位")
    @Column(name = "LOCATE_FLOOR")
    private Integer locateFloor;

    @ApiModelProperty("临街状况")
    @Length(max = 20, message = "临街状况长度最多20位")
    @Column(name = "ROAD_CONDITION_CD")
    private String roadConditionCd;

    @ApiModelProperty("建筑结构")
    @Length(max = 20, message = "建筑结构长度最多20位")
    @Column(name = "BUILD_STRUCTURE_CD")
    private String buildStructureCd;

    @ApiModelProperty("建筑类别")
    @Length(max = 20, message = "建筑类别长度最多20位")
    @Column(name = "STRUCTURE_TP_CD")
    private String structureTpCd;

    @ApiModelProperty("是否有电梯")
    @Length(max = 20, message = "是否有电梯长度最多20位")
    @Column(name = "ELEVATOR_FLG")
    private String elevatorFlg;

    @ApiModelProperty("层高")
    @Length(max = 16, message = "层高长度最多16位")
    @Column(name = "FLOOR_HEIGHT_DESC_CD")
    private String floorHeightDescCd;

    @ApiModelProperty("朝向")
    @Length(max = 20, message = "朝向长度最多20位")
    @Column(name = "TOWARD_DIRECT_CD")
    private String towardDirectCd;

    @ApiModelProperty("装修状况")
    @Length(max = 20, message = "装修状况长度最多20位")
    @Column(name = "DECR_COND_CD")
    private String decrCondCd;

    @ApiModelProperty("平面布置优劣度")
    @Length(max = 20, message = "平面布置优劣度长度最多20位")
    @Column(name = "PLANE_LAYOUT_CD")
    private String planeLayoutCd;

    @ApiModelProperty("建成年代")
    @Digits(integer = 10, fraction = 0, message = "建成年代不能超过10位")
    @Column(name = "COMPLETE_DATE")
    private Integer completeDate;

    @ApiModelProperty("总使用年限")
    @Digits(integer = 10, fraction = 0, message = "总使用年限不能超过10位")
    @Column(name = "HOUSE_USE_LIM")
    private Integer houseUseLim;

    @ApiModelProperty("建筑面积")
    @Length(max = 16, message = "建筑面积长度最多16位")
    @Column(name = "STRCTURE_SQU")
    private String strctureSqu;

    @ApiModelProperty("套内建筑面积")
    @Length(max = 16, message = "套内建筑面积长度最多16位")
    @Column(name = "IN_WRAP_FLOOR_SPACE")
    private String inWrapFloorSpace;

    @ApiModelProperty("商场名称")
    @Length(max = 100, message = "商场名称长度最多100位")
    @Column(name = "LAND_AGENT_NM")
    private String landAgentNm;

    @ApiModelProperty("宗地形状")
    @Length(max = 20, message = "宗地形状长度最多20位")
    @Column(name = "LAND_SHAP_CD")
    private String landShapCd;

    @ApiModelProperty("商铺位置")
    @Length(max = 20, message = "商铺位置长度最多20位")
    @Column(name = "STORE_POS_CD")
    private String storePosCd;

    @ApiModelProperty("临街道路")
    @Length(max = 20, message = "临街道路长度最多20位")
    @Column(name = "SIDED_STREET_COND_CD")
    private String sidedStreetCondCd;

    @ApiModelProperty("是否有效")
    @Length(max = 20, message = "是否有效长度最多20位")
    @Column(name = "VALID_FLG")
    private String validFlg;

    @ApiModelProperty("系统创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Column(name = "SYS_CREATE_TIME")
    private Date sysCreateTime;

    @ApiModelProperty("系统更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Column(name = "SYS_UPDATE_TIME")
    private Date sysUpdateTime;

    @ApiModelProperty("样本更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Column(name = "SAMPLE_UPDATE_TIME")
    private Date sampleUpdateTime;

    @ApiModelProperty("信息录入人员")
    @Length(max = 100, message = "信息录入人员长度最多100位")
    @Column(name = "INPUT_USER_NO")
    private String inputUserNo;

    @ApiModelProperty("信息录入日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Column(name = "INPUT_DT")
    private Date inputDt;

    @ApiModelProperty("信息修改人员")
    @Length(max = 100, message = "信息修改人员长度最多100位")
    @Column(name = "MODIFY_USER_NO")
    private String modifyUserNo;

    @ApiModelProperty("经办机构")
    @Length(max = 40, message = "经办机构长度最多40位")
    @Column(name = "OPR_ORG_NO")
    private String oprOrgNo;

    @ApiModelProperty("信息修改者机构")
    @Length(max = 40, message = "信息修改者机构长度最多40位")
    @Column(name = "MODIFY_ORG")
    private String modifyOrg;

    @ApiModelProperty("物业类型")
    @Length(max = 20, message = "物业类型长度最多20位")
    @Column(name = "PROPERTY_TP_CD")
    private String propertyTpCd;

    @ApiModelProperty("所在楼层")
    @Length(max = 20, message = "所在楼层长度最多20位")
    @Column(name = "LOCATE_FLOOR_CD")
    private String locateFloorCd;

    @ApiModelProperty("备注")
    @Length(max = 1000, message = "备注长度最多1,000位")
    @Column(name = "RLEST_SAMP_RMK")
    private String rlestSampRmk;

    @ApiModelProperty("")
    @Digits(integer = 18, fraction = 2, message = "不能超过20位")
    @Column(name = "LIST_AMT")
    private BigDecimal listAmt;

    @ApiModelProperty("挂牌日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Column(name = "LIST_DT")
    private Date listDt;

    public String getSampleId(){
        return sampleId;
    }

    public void setSampleId(String sampleId){
        this.sampleId = sampleId;
    }
    public String getRlestSampleNo(){
        return rlestSampleNo;
    }

    public void setRlestSampleNo(String rlestSampleNo){
        this.rlestSampleNo = rlestSampleNo;
    }
    public String getCltTpCd(){
        return cltTpCd;
    }

    public void setCltTpCd(String cltTpCd){
        this.cltTpCd = cltTpCd;
    }
    public String getRlestSampTpCd(){
        return rlestSampTpCd;
    }

    public void setRlestSampTpCd(String rlestSampTpCd){
        this.rlestSampTpCd = rlestSampTpCd;
    }
    public String getSampleSrcCd(){
        return sampleSrcCd;
    }

    public void setSampleSrcCd(String sampleSrcCd){
        this.sampleSrcCd = sampleSrcCd;
    }
    public String getHousingEstNo(){
        return housingEstNo;
    }

    public void setHousingEstNo(String housingEstNo){
        this.housingEstNo = housingEstNo;
    }
    public BigDecimal getAssessAmt(){
        return assessAmt;
    }

    public void setAssessAmt(BigDecimal assessAmt){
        this.assessAmt = assessAmt;
    }
    public BigDecimal getUnitPrice(){
        return unitPrice;
    }

    public void setUnitPrice(BigDecimal unitPrice){
        this.unitPrice = unitPrice;
    }
    public Date getAssessDt(){
        return assessDt;
    }

    public void setAssessDt(Date assessDt){
        this.assessDt = assessDt;
    }
    public String getHousingEstNm(){
        return housingEstNm;
    }

    public void setHousingEstNm(String housingEstNm){
        this.housingEstNm = housingEstNm;
    }
    public String getDetailAds(){
        return detailAds;
    }

    public void setDetailAds(String detailAds){
        this.detailAds = detailAds;
    }
    public String getBuildingNo(){
        return buildingNo;
    }

    public void setBuildingNo(String buildingNo){
        this.buildingNo = buildingNo;
    }
    public String getDoorNo(){
        return doorNo;
    }

    public void setDoorNo(String doorNo){
        this.doorNo = doorNo;
    }
    public String getTradeStrctureSqu(){
        return tradeStrctureSqu;
    }

    public void setTradeStrctureSqu(String tradeStrctureSqu){
        this.tradeStrctureSqu = tradeStrctureSqu;
    }
    public String getEconomicalFlg(){
        return economicalFlg;
    }

    public void setEconomicalFlg(String economicalFlg){
        this.economicalFlg = economicalFlg;
    }
    public Integer getAboveFloorAmount(){
        return aboveFloorAmount;
    }

    public void setAboveFloorAmount(Integer aboveFloorAmount){
        this.aboveFloorAmount = aboveFloorAmount;
    }
    public Integer getLocateFloor(){
        return locateFloor;
    }

    public void setLocateFloor(Integer locateFloor){
        this.locateFloor = locateFloor;
    }
    public String getRoadConditionCd(){
        return roadConditionCd;
    }

    public void setRoadConditionCd(String roadConditionCd){
        this.roadConditionCd = roadConditionCd;
    }
    public String getBuildStructureCd(){
        return buildStructureCd;
    }

    public void setBuildStructureCd(String buildStructureCd){
        this.buildStructureCd = buildStructureCd;
    }
    public String getStructureTpCd(){
        return structureTpCd;
    }

    public void setStructureTpCd(String structureTpCd){
        this.structureTpCd = structureTpCd;
    }
    public String getElevatorFlg(){
        return elevatorFlg;
    }

    public void setElevatorFlg(String elevatorFlg){
        this.elevatorFlg = elevatorFlg;
    }
    public String getFloorHeightDescCd(){
        return floorHeightDescCd;
    }

    public void setFloorHeightDescCd(String floorHeightDescCd){
        this.floorHeightDescCd = floorHeightDescCd;
    }
    public String getTowardDirectCd(){
        return towardDirectCd;
    }

    public void setTowardDirectCd(String towardDirectCd){
        this.towardDirectCd = towardDirectCd;
    }
    public String getDecrCondCd(){
        return decrCondCd;
    }

    public void setDecrCondCd(String decrCondCd){
        this.decrCondCd = decrCondCd;
    }
    public String getPlaneLayoutCd(){
        return planeLayoutCd;
    }

    public void setPlaneLayoutCd(String planeLayoutCd){
        this.planeLayoutCd = planeLayoutCd;
    }
    public Integer getCompleteDate(){
        return completeDate;
    }

    public void setCompleteDate(Integer completeDate){
        this.completeDate = completeDate;
    }
    public Integer getHouseUseLim(){
        return houseUseLim;
    }

    public void setHouseUseLim(Integer houseUseLim){
        this.houseUseLim = houseUseLim;
    }
    public String getStrctureSqu(){
        return strctureSqu;
    }

    public void setStrctureSqu(String strctureSqu){
        this.strctureSqu = strctureSqu;
    }
    public String getInWrapFloorSpace(){
        return inWrapFloorSpace;
    }

    public void setInWrapFloorSpace(String inWrapFloorSpace){
        this.inWrapFloorSpace = inWrapFloorSpace;
    }
    public String getLandAgentNm(){
        return landAgentNm;
    }

    public void setLandAgentNm(String landAgentNm){
        this.landAgentNm = landAgentNm;
    }
    public String getLandShapCd(){
        return landShapCd;
    }

    public void setLandShapCd(String landShapCd){
        this.landShapCd = landShapCd;
    }
    public String getStorePosCd(){
        return storePosCd;
    }

    public void setStorePosCd(String storePosCd){
        this.storePosCd = storePosCd;
    }
    public String getSidedStreetCondCd(){
        return sidedStreetCondCd;
    }

    public void setSidedStreetCondCd(String sidedStreetCondCd){
        this.sidedStreetCondCd = sidedStreetCondCd;
    }
    public String getValidFlg(){
        return validFlg;
    }

    public void setValidFlg(String validFlg){
        this.validFlg = validFlg;
    }
    public Date getSysCreateTime(){
        return sysCreateTime;
    }

    public void setSysCreateTime(Date sysCreateTime){
        this.sysCreateTime = sysCreateTime;
    }
    public Date getSysUpdateTime(){
        return sysUpdateTime;
    }

    public void setSysUpdateTime(Date sysUpdateTime){
        this.sysUpdateTime = sysUpdateTime;
    }
    public Date getSampleUpdateTime(){
        return sampleUpdateTime;
    }

    public void setSampleUpdateTime(Date sampleUpdateTime){
        this.sampleUpdateTime = sampleUpdateTime;
    }
    public String getInputUserNo(){
        return inputUserNo;
    }

    public void setInputUserNo(String inputUserNo){
        this.inputUserNo = inputUserNo;
    }
    public Date getInputDt(){
        return inputDt;
    }

    public void setInputDt(Date inputDt){
        this.inputDt = inputDt;
    }
    public String getModifyUserNo(){
        return modifyUserNo;
    }

    public void setModifyUserNo(String modifyUserNo){
        this.modifyUserNo = modifyUserNo;
    }
    public String getOprOrgNo(){
        return oprOrgNo;
    }

    public void setOprOrgNo(String oprOrgNo){
        this.oprOrgNo = oprOrgNo;
    }
    public String getModifyOrg(){
        return modifyOrg;
    }

    public void setModifyOrg(String modifyOrg){
        this.modifyOrg = modifyOrg;
    }
    public String getPropertyTpCd(){
        return propertyTpCd;
    }

    public void setPropertyTpCd(String propertyTpCd){
        this.propertyTpCd = propertyTpCd;
    }
    public String getLocateFloorCd(){
        return locateFloorCd;
    }

    public void setLocateFloorCd(String locateFloorCd){
        this.locateFloorCd = locateFloorCd;
    }
    public String getRlestSampRmk(){
        return rlestSampRmk;
    }

    public void setRlestSampRmk(String rlestSampRmk){
        this.rlestSampRmk = rlestSampRmk;
    }
    public BigDecimal getListAmt(){
        return listAmt;
    }

    public void setListAmt(BigDecimal listAmt){
        this.listAmt = listAmt;
    }
    public Date getListDt(){
        return listDt;
    }

    public void setListDt(Date listDt){
        this.listDt = listDt;
    }
}

